﻿ #define _CRT_SECURE_NO_WARNINGS 1

//编写代码实现：求⼀个整数存储在内存中的⼆进制中1的个数
//⽅法1
#include <stdio.h>
//int main()
//{
//	int num = 10;
//	int count = 0;//计数
//	while (num)
//	{
//		if (num % 2 == 1)
//			count++;
//		num = num / 2;
//	}
//	printf("⼆进制中1的个数 = %d\n", count);
//	return 0;
//}
//⽅法2：
 
//int main()
//{
//	int num = -1;
//	int i = 0;
//	int count = 0;//计数
//	for (i = 0; i < 32; i++)
//	{
//		if (num & (1 << i))
//			count++;
//	}
//	printf("⼆进制中1的个数 = %d\n", count);
//	return 0;
//}

 //fang方法三
//int main()
//{
//	int num = -1;
//	int i = 0;
//	int count = 0;//计数
//	while (num)
//	{
//		count++;
//		num = num & (num - 1);
//	}
//	printf("⼆进制中1的个数 = %d\n", count);
//	return 0;
//}